This specification relates to facilitating distribution of execution of blocks of software code between different computers at runtime.
Distributed systems enable multiple computers in communication over a network to work on a common problem, sharing the workload. Different computers within the network may have access to different resources and may also have different memory and storage capabilities. Applications can be written to take advantage of the capabilities of the different computers. For example, an application can be written such that some tasks are assigned to be performed by one computer and other tasks are assigned to be performed by another computer.